-- Network Working Group                                       G. Mansfield
-- Request for Comments: 2605                          Cyber Solutions Inc.
-- Obsoletes: 1567                                                 S. Kille
-- Category: Standards Track                           MessagingDirect Ltd.
--                                                                June 1999
-- 
-- 
--                     Directory Server Monitoring MIB

   DIRECTORY-SERVER-MIB DEFINITIONS ::= BEGIN

    IMPORTS
      MODULE-IDENTITY,  Counter32, Gauge32, OBJECT-TYPE
                 FROM SNMPv2-SMI
      mib-2      FROM RFC1213-MIB
      DisplayString,    TimeStamp
                 FROM SNMPv2-TC
      MODULE-COMPLIANCE, OBJECT-GROUP
                 FROM SNMPv2-CONF
      ZeroBasedCounter32
                 FROM RMON2-MIB
      applIndex, DistinguishedName, URLString

                 FROM NETWORK-SERVICES-MIB;

    dsMIB MODULE-IDENTITY
       LAST-UPDATED "9906070000Z"
       ORGANIZATION "IETF Mail and Directory Management Working
                     Group"
       CONTACT-INFO
      "                      Glenn Mansfield
                     Postal: Cyber Solutions Inc.
                             6-6-3, Minami Yoshinari
                             Aoba-ku, Sendai, Japan 989-3204.

                        Tel: +81-22-303-4012
                        Fax: +81-22-303-4015
                   E-mail: glenn@cysols.com
       Working Group E-mail: ietf-madman@innosoft.com
               To subscribe: ietf-madman-request@innosoft.com"

       DESCRIPTION
               " The MIB module for monitoring Directory Services."

       -- revision information

       REVISION "9906070000Z"
       DESCRIPTION
         "This revision of this MIB is published in RFC 2605.

          This revision obsoletes RFC 1567. It is incompatible with
          the original MIB and so it has been renamed from dsaMIB
          to dsMIB."

       REVISION "9311250000Z" -- 25th November 1993
       DESCRIPTION
         "The original version of this MIB was published in RFC 1567."
       ::= { mib-2 66 }

    dsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DsTableEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
          " The table holding information related to the Directory
            Servers."
        ::= {dsMIB 1}

    dsTableEntry OBJECT-TYPE
        SYNTAX DsTableEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
          " Entry containing summary description for a Directory
            Server."
        INDEX { applIndex }
        ::= {dsTable 1}

   -- General description of the Directory Server application will be
   -- available in the applTable of the NETWORK-SERVICES-MIB indexed by
   -- applIndex.

    DsTableEntry ::= SEQUENCE {
        dsServerType
            BITS,
        dsServerDescription
            DisplayString,

    -- Entry statistics/Cache performance
        dsMasterEntries
            Gauge32,
        dsCopyEntries
            Gauge32,
        dsCacheEntries
            Gauge32,
        dsCacheHits
            Counter32,
        dsSlaveHits
            Counter32
    }

    dsServerType OBJECT-TYPE
        SYNTAX BITS {
                     frontEndDirectoryServer(0),
                     backEndDirectoryServer(1)
               }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          "This object indicates whether the server is
           a frontend or, a backend or, both. If the server
           is a frontend, then the frontEndDirectoryServer
           bit will be set. Similarly for the backend."
        ::= {dsTableEntry 1}

    dsServerDescription OBJECT-TYPE
       SYNTAX DisplayString
       MAX-ACCESS read-only
       STATUS current
       DESCRIPTION
         "A text description of the application.  This information
          is intended to identify and briefly describe the
          application in a status display."
        ::= {dsTableEntry 2}


   -- A (C)LDAP frontend to the X.500 Directory will not have
   -- MasterEntries, CopyEntries; the following counters will
   -- be inaccessible for LDAP/CLDAP frontends to the X.500
   -- directory: dsMasterEntries, dsCopyEntries, dsSlaveHits.

    dsMasterEntries OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of entries mastered in the Directory Server."
        ::= {dsTableEntry 3}

    dsCopyEntries OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of entries for which systematic (slave)
            copies are maintained in the Directory Server."
        ::= {dsTableEntry 4}

    dsCacheEntries OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of entries cached (non-systematic copies) in
            the Directory Server. This will include the entries that
            are cached partially. The negative cache is not counted."
        ::= {dsTableEntry 5}

    dsCacheHits OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of operations that were serviced from
            the locally held cache."
        ::= {dsTableEntry 6}

    dsSlaveHits  OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of operations that were serviced from
            the locally held object replications ( copy-
            entries)."
        ::= {dsTableEntry 7}

    dsApplIfOpsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DsApplIfOpsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
          " The table holding information related to the
            Directory Server operations."
        ::= {dsMIB 2}

    dsApplIfOpsEntry OBJECT-TYPE
        SYNTAX DsApplIfOpsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
          " Entry containing operations related statistics
            for a Directory Server."
        INDEX { applIndex, dsApplIfProtocolIndex }
        ::= {dsApplIfOpsTable 1}
    DsApplIfOpsEntry ::= SEQUENCE {

        dsApplIfProtocolIndex
             INTEGER,
        dsApplIfProtocol
             OBJECT IDENTIFIER,

    -- Bindings

        dsApplIfUnauthBinds
            Counter32,
        dsApplIfSimpleAuthBinds
            Counter32,
        dsApplIfStrongAuthBinds
            Counter32,
        dsApplIfBindSecurityErrors
            Counter32,

    -- In-coming operations

        dsApplIfInOps
            Counter32,
        dsApplIfReadOps
            Counter32,
        dsApplIfCompareOps
            Counter32,
        dsApplIfAddEntryOps
            Counter32,
        dsApplIfRemoveEntryOps
            Counter32,
        dsApplIfModifyEntryOps
            Counter32,
        dsApplIfModifyRDNOps
            Counter32,
        dsApplIfListOps
            Counter32,
        dsApplIfSearchOps
            Counter32,
        dsApplIfOneLevelSearchOps
            Counter32,
        dsApplIfWholeSubtreeSearchOps
            Counter32,

    -- Out going operations

        dsApplIfReferrals
            Counter32,
        dsApplIfChainings
            Counter32,

    -- Errors

        dsApplIfSecurityErrors
            Counter32,
        dsApplIfErrors
            Counter32,

   --  replications

        dsApplIfReplicationUpdatesIn
            Counter32,
        dsApplIfReplicationUpdatesOut
            Counter32,

    -- Traffic Volume

        dsApplIfInBytes
            Counter32,
        dsApplIfOutBytes
            Counter32
    }

    -- CLDAP does not use binds; for the CLDAP interface of a Directory
    -- Server the bind related counters will be inaccessible.
    --
    -- CLDAP and LDAP implement "Read" and "List" operations
    -- indirectly via the "search" operation; the following
    -- counters will be inaccessible for the CLDAP and LDAP interfaces of
    -- Directory Servers:  dsApplIfReadOps, dsApplIfListOps
    --
    -- CLDAP does not implement "Compare", "Add", "Remove",
    -- "Modify", "ModifyRDN"; the following counters will be
    -- inaccessible for the CLDAP interfaces of Directory Servers:
    -- dsApplIfCompareOps, dsApplIfAddEntryOps,  dsApplIfRemoveEntryOps,
    -- dsApplIfModifyEntryOps, dsApplIfModifyRDNOps.
    --
    -- CLDAP Directory Servers do not return Referrals
    -- the following fields will remain inaccessible for
    -- CLDAP interfaces of Directory Servers: dsApplIfReferrals.

    dsApplIfProtocolIndex OBJECT-TYPE
        SYNTAX INTEGER (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
         "An index to uniquely identify an entry corresponding to a
          application-layer protocol interface. This index is used
          for lexicographic ordering of the table."
        ::= {dsApplIfOpsEntry 1}

    dsApplIfProtocol OBJECT-TYPE
        SYNTAX OBJECT IDENTIFIER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
         "An identification of the protocol being used by the application
          on this interface.  For an OSI Application, this will be the
          Application Context.  For Internet applications, the IANA
          maintains a registry[22] of the OIDs which correspond to
          well-known applications.  If the application protocol is
          not listed in the registry, an OID value of the form
          {applTCPProtoID port} or {applUDProtoID port} are used for
          TCP-based and UDP-based protocols, respectively. In either
          case 'port' corresponds to the primary port number being
          used by the protocol. The OIDs applTCPProtoID and
          applUDPProtoID are defined in NETWORK-SERVICES-MIB"
        ::= {dsApplIfOpsEntry 2}

    dsApplIfUnauthBinds OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of unauthenticated/anonymous bind requests
            received."
        ::= {dsApplIfOpsEntry 3}

    dsApplIfSimpleAuthBinds OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of bind requests that were authenticated
            using simple authentication procedures like password
            checks. This includes the
            password authentication using SASL mechanisms like
            CRAM-MD5."
        ::= {dsApplIfOpsEntry 4}

    dsApplIfStrongAuthBinds OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of bind requests that were authenticated
            using TLS and X.500 strong authentication procedures.
            This includes the binds that were
            authenticated using external authentication procedures."
        ::= {dsApplIfOpsEntry 5}

    dsApplIfBindSecurityErrors OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of bind requests that have been rejected
            due to inappropriate authentication or
            invalid credentials."
        ::= {dsApplIfOpsEntry 6}

    dsApplIfInOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of requests received from DUAs or other
            Directory Servers."
        ::= {dsApplIfOpsEntry 7}

    dsApplIfReadOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of read requests  received."
        ::= {dsApplIfOpsEntry 8}


    dsApplIfCompareOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of compare requests received."
        ::= {dsApplIfOpsEntry 9}

    dsApplIfAddEntryOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of addEntry requests received."
        ::= {dsApplIfOpsEntry 10}


    dsApplIfRemoveEntryOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of removeEntry requests received."
        ::= {dsApplIfOpsEntry 11}


    dsApplIfModifyEntryOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of modifyEntry requests received."
        ::= {dsApplIfOpsEntry 12}


    dsApplIfModifyRDNOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of modifyRDN requests received."
        ::= {dsApplIfOpsEntry 13}

    dsApplIfListOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of list requests received."
        ::= {dsApplIfOpsEntry 14}

    dsApplIfSearchOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of search requests- baseObject searches,
            oneLevel searches and  whole subtree searches,
            received."
        ::= {dsApplIfOpsEntry 15}

    dsApplIfOneLevelSearchOps OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of oneLevel search requests received."
        ::= {dsApplIfOpsEntry 16}


    dsApplIfWholeSubtreeSearchOps   OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of whole subtree search requests received."
        ::= {dsApplIfOpsEntry 17}


    dsApplIfReferrals OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of referrals returned in response
            to requests for operations."
        ::= {dsApplIfOpsEntry 18}

    dsApplIfChainings OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of operations forwarded by this Directory Server
            to other Directory Servers."
        ::= {dsApplIfOpsEntry 19}

    dsApplIfSecurityErrors OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of requests received
            which did not meet the security requirements. "
        ::= {dsApplIfOpsEntry 20}

    dsApplIfErrors  OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of requests that could not be serviced
            due to errors other than security errors, and
            referrals.
            A partially serviced operation will not be counted
            as an error.
            The errors include naming-related, update-related,
            attribute-related and service-related errors."
        ::= {dsApplIfOpsEntry 21}

   -- Replication operations

    dsApplIfReplicationUpdatesIn OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of replication updates fetched or received from
            supplier Directory Servers."
        ::= {dsApplIfOpsEntry 22}

    dsApplIfReplicationUpdatesOut OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Number of replication updates sent to or taken by
            consumer Directory Servers."
        ::= {dsApplIfOpsEntry 23}

    dsApplIfInBytes  OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Incoming traffic, in bytes, on the interface.
            This will include requests from DUAs as well
            as responses from other Directory Servers."
        ::= {dsApplIfOpsEntry 24}

    dsApplIfOutBytes OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Outgoing traffic in bytes on the interface.
            This will include responses to DUAs and Directory
            Servers as well as requests to other Directory Servers."
        ::= {dsApplIfOpsEntry 25}


    -- The dsIntTable contains statistical data on the peer
    -- Directory Servers  with which the monitored Directory
    -- Server interacts or, attempts to interact. This  table is
    -- expected to provide a useful insight into the effect of
    -- neighbours on the Directory Server's performance.
    -- The table keeps track of the last "N" Directory Servers
    -- with which  the  monitored   Directory  has  interacted
    -- (attempted to interact), where "N" is a locally-defined
    -- constant.
    -- For a multiprotocol server, statistics for each protocol
    -- are kept separetely.

    dsIntTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF DsIntEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
          " Each row of this table contains some details
            related to the history of the interaction
            of the monitored Directory Server with its
            peer Directory Servers."
        ::= { dsMIB 3 }

    dsIntEntry OBJECT-TYPE
        SYNTAX  DsIntEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
          " Entry containing interaction details of a Directory
            Server with a peer Directory Server."
        INDEX { applIndex,dsIntEntIndex, dsApplIfProtocolIndex }
        ::= { dsIntTable 1 }

    DsIntEntry ::= SEQUENCE {
       dsIntEntIndex
                 INTEGER,
       dsIntEntDirectoryName
                 DistinguishedName,
       dsIntEntTimeOfCreation
                 TimeStamp,
       dsIntEntTimeOfLastAttempt
                 TimeStamp,
       dsIntEntTimeOfLastSuccess
                 TimeStamp,
       dsIntEntFailuresSinceLastSuccess
                 Gauge32,
       dsIntEntFailures
                 ZeroBasedCounter32,
       dsIntEntSuccesses
                 ZeroBasedCounter32,
       dsIntEntURL
                 URLString
    }

    dsIntEntIndex  OBJECT-TYPE
        SYNTAX INTEGER (1..2147483647)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
          " Together with applIndex and dsApplIfProtocolIndex, this
            object forms the unique key to
            identify the conceptual row which contains useful info
            on the (attempted) interaction between the Directory
            Server (referred to by applIndex) and a peer Directory
            Server using a particular protocol."
        ::= {dsIntEntry 1}

    dsIntEntDirectoryName  OBJECT-TYPE
        SYNTAX DistinguishedName
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Distinguished Name of the peer Directory Server to
            which this entry pertains."
        ::= {dsIntEntry 2}

    dsIntEntTimeOfCreation  OBJECT-TYPE
        SYNTAX TimeStamp
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " The value of sysUpTime when this row was created.
            If the entry was created before the network management
            subsystem was initialized, this object will contain
            a value of zero."
        ::= {dsIntEntry 3}

    dsIntEntTimeOfLastAttempt  OBJECT-TYPE
        SYNTAX TimeStamp
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " The value of sysUpTime when the last attempt was made
            to contact the peer Directory Server. If the last attempt
            was made before the network management subsystem was
            initialized, this object will contain a value of zero."
        ::= {dsIntEntry 4}

    dsIntEntTimeOfLastSuccess  OBJECT-TYPE
        SYNTAX TimeStamp
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " The value of sysUpTime when the last attempt made to
            contact the peer Directory Server was successful. If there
            have been no successful attempts this entry will have a value
            of zero. If the last successful attempt was made before
            the network management subsystem was initialized, this
            object will contain a value of zero."
        ::= {dsIntEntry 5}

    dsIntEntFailuresSinceLastSuccess  OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " The number of failures since the last time an
            attempt to contact the peer Directory Server was successful.
            If there have been no successful attempts, this counter
            will contain the number of failures since this entry
            was created."
        ::= {dsIntEntry 6}

   -- note this gauge has a maximum value of 4294967295 and,
   -- it does not wrap.[5]

    dsIntEntFailures  OBJECT-TYPE
        SYNTAX ZeroBasedCounter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Cumulative failures in contacting the peer Directory Server
            since the creation of this entry."
        ::= {dsIntEntry 7}

    dsIntEntSuccesses  OBJECT-TYPE
        SYNTAX ZeroBasedCounter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " Cumulative successes in contacting the peer Directory Server
            since the creation of this entry."
        ::= {dsIntEntry 8}

    dsIntEntURL  OBJECT-TYPE
        SYNTAX URLString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          " URL of the peer Directory Server."
        ::= {dsIntEntry 9}


    -- Conformance information

    dsConformance OBJECT IDENTIFIER ::= { dsMIB 4 }

    dsGroups      OBJECT IDENTIFIER ::= { dsConformance 1 }
    dsCompliances OBJECT IDENTIFIER ::= { dsConformance 2 }

    -- Compliance statements

    dsEntryCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for SNMP entities
                which implement the DIRECTORY-SERVER-MIB for
                a summary overview of the Directory Servers ."

        MODULE  -- this module
            MANDATORY-GROUPS { dsEntryGroup }

        ::= { dsCompliances 1 }

    dsOpsCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for SNMP entities
                which implement the DIRECTORY-SERVER-MIB for monitoring
                Directory Server operations,  entry statistics and cache
                performance."

        MODULE  -- this module
            MANDATORY-GROUPS { dsEntryGroup, dsOpsGroup }

        ::= { dsCompliances 2 }

    dsIntCompliance MODULE-COMPLIANCE
           STATUS  current
           DESCRIPTION
                   " The compliance statement  for SNMP  entities
                     which implement the DIRECTORY-SERVER-MIB for
                     monitoring Directory Server operations and the
                     interaction of the Directory Server with peer
                     Directory Servers."

           MODULE  -- this module
           MANDATORY-GROUPS { dsEntryGroup, dsIntGroup }

           ::= { dsCompliances 3 }

    dsOpsIntCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                " The compliance statement  for SNMP  entities
                  which implement the DIRECTORY-SERVER-MIB for monitoring
                  Directory Server operations and the interaction of the
                  Directory Server with peer Directory Servers."

        MODULE  -- this module
        MANDATORY-GROUPS { dsEntryGroup, dsOpsGroup, dsIntGroup }

        ::= { dsCompliances 4 }


    -- Units of conformance

    dsEntryGroup    OBJECT-GROUP
        OBJECTS {dsServerType,            dsServerDescription,
                 dsMasterEntries,         dsCopyEntries,
                 dsCacheEntries,          dsCacheHits,
                 dsSlaveHits}
        STATUS  current
        DESCRIPTION
                " A collection of objects for a summary overview of the
                  Directory Servers."
        ::= { dsGroups 1 }

    dsOpsGroup    OBJECT-GROUP
        OBJECTS {
          dsApplIfProtocolIndex,          dsApplIfProtocol,
          dsApplIfUnauthBinds,            dsApplIfSimpleAuthBinds,
          dsApplIfStrongAuthBinds,        dsApplIfBindSecurityErrors,
          dsApplIfInOps,                  dsApplIfReadOps,
          dsApplIfCompareOps,             dsApplIfAddEntryOps,
          dsApplIfRemoveEntryOps,         dsApplIfModifyEntryOps,
          dsApplIfModifyRDNOps,           dsApplIfListOps,
          dsApplIfSearchOps,              dsApplIfOneLevelSearchOps,
          dsApplIfWholeSubtreeSearchOps,  dsApplIfReferrals,
          dsApplIfChainings,              dsApplIfSecurityErrors,
          dsApplIfErrors,                 dsApplIfReplicationUpdatesIn,
          dsApplIfReplicationUpdatesOut,  dsApplIfInBytes,
          dsApplIfOutBytes      }
        STATUS  current
        DESCRIPTION
                " A collection of objects for monitoring the Directory
                  Server operations."
        ::= { dsGroups 2 }

    dsIntGroup    OBJECT-GROUP
        OBJECTS {
          dsIntEntDirectoryName,         dsIntEntTimeOfCreation,
          dsIntEntTimeOfLastAttempt,     dsIntEntTimeOfLastSuccess,
          dsIntEntFailuresSinceLastSuccess, dsIntEntFailures,
          dsIntEntSuccesses,             dsIntEntURL}
        STATUS  current
        DESCRIPTION
                " A collection of objects for monitoring the Directory
                  Server's interaction with peer Directory Servers."
        ::= { dsGroups 3 }


   END